
#include <iostream>
#include <iomanip>

#include "Report.h"
#include "TechReport.h"

using std::cout;
using std::endl;

int main (int argc, char * const argv[]) 
{  
 
 /* Creation of three objects instance of the class Report named TR1, TR2 and TR3 */
 TechReport* TR1 = new TechReport ();
 TechReport* TR2 = new TechReport ();
 TechReport* TR3 = new TechReport ();
 
 /* Test of the funcion "print", testing thus the following functions : { "getId", "getAuthor", "getTitle" "getDepartment", "getInstitution" "getNumberOfPages", and "getYearOfPublicaton" }*/
 cout << "* Let's test the TechReport's data members by giving them their default values, then we find : " <<endl;
 TR1->print();
 TR2->print();
 TR3->print();
 
 TR1->setId(5427);
 TR1->setYearOfPublication(1975);
 TR1->setAuthor(" Hamza SHAWY ");
 TR1->setTitle(" THE MYSTERIOUS KNOWLEDGE  "); 
 TR1->setDepartment(" KNOWLEDGES  ");
 TR1->setInstitution(" THE KNOWLEDGE'S INSTITUTION "); 
 TR1->setNumberOfPages(17);
 TR1->setUrl(" www.the-mysterious-knowledges.com ");
 
 
 TR2->setId(01654);
 TR2->setYearOfPublication(1989);
 TR2->setAuthor(" Jonathan SCHRODER ");
 TR2->setTitle(" HIGH HOPES ");
 TR2->setDepartment(" FEELINGS ");
 TR2->setInstitution(" THE FEELING'S INSTITUTION "); 
 TR2->setNumberOfPages(29);
 TR2->setUrl(" www.high-hopes.com ");
 
 TR3->setId(3069);
 TR3->setYearOfPublication(2002);
 TR3->setAuthor(" Issa FORTIN ");
 TR3->setTitle(" THEIR PARADISE  ");
 TR3->setDepartment(" BELIEVES ");
 TR3->setInstitution(" THE BELIEVE'S INSTITUTION  "); 
 TR3->setNumberOfPages(8);
 TR3->setUrl(" www.their-paradise.com ");
 
 cout << "* Then, let's give values to the attributs of the class TechReport ! We find thus : " <<endl;
 TR1->print();
 TR2->print();
 TR3->print();

#ifdef WIN32
 system("PAUSE");
#endif
 
 return 0;
 }
